package com.fzg.service;

import com.fzg.common.enums.ResponseWrapper;
import com.fzg.common.model.personal.param.*;
import com.fzg.entity.Resume;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author fzg
 * @since 2022-03-26
 */
public interface ResumeService extends IService<Resume> {

    /**
     * 查询当前登陆的用户的简历信息
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper queryLoginUserResume(QueryLoginUserResume param);

    /**
     * 保存简历
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper saveResume(SaveResumeParam param);

    /**
     * 判断当前登录的用户是否有简历
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper checkHaveResume(CheckHaveResume param);

    /**
     * 投递简历
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper deliverResume(DeliverResume param);

    /**
     * 判断当前职位是否已经投递
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper checkIsDeliver(DeliverResume param);

    /**
     * 判断当前登陆的用户是否有投递记录
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper checkLoginUserIsHaveDeliverRecord(CheckLoginUserIsHaveDeliverRecord param);

    /**
     * 查询当前登录用户的投递记录
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper queryLoginUserDeliverRecord(CheckLoginUserIsHaveDeliverRecord param);

    /**
     * 通过userJobAid查询用户的简历信息
     * @param param 参数
     * @return ResponseWrapper
     */
    ResponseWrapper queryClickUserResume(QueryClickUserResume param);

}
